home *** CD-ROM | disk | FTP | other *** search
- /*
- ==============================================================================
- WordUp Graphics Toolkit Version 5.0
- Demonstration Program 16
-
- This program shows how to use wcopyscreen.
-
- *** PROJECT ***
- This program requires the file WGT5_WC.LIB to be linked.
-
- *** DATA FILES ***
- NONE
- WATCOM C++ VERSION
- ==============================================================================
- */
-
- #include <wgt5.h>
-
-
- void main(void)
- {
- short x,y, tempx, tempy;
- short oldmode;
- block screen1;
-
- printf ("WGT Example #16\n\n");
- printf ("This program demonstrates virtual screen buffers.\n");
- printf ("It will copy data from a virtual screen to the current mouse location\n");
- printf ("on the visual screen. Press a key to end the demo at any time.\n");
- printf ("\n\nPress any key to continue.\n");
- getch ();
-
- if ( !vgadetected () )
- {
- printf("Error - VGA card required for any WGT program.\n");
- exit (0);
- }
- oldmode = wgetmode ();
- vga256 ();
-
- screen1 = wnewblock (0, 0, 319, 199);
-
- wsetscreen (screen1); /* sets to screen1 */
- for (y = 0; y < 200; y++)
- {
- wsetcolor (y);
- wfline (0, 0, 319, y); /* draw something on another screen */
- wfline (319, 199, 0, y);
- }
-
- minit ();
- moff ();
- wnormscreen (); /* make the putblock go onto the default screen */
-
- do {
- tempx = mouse.mx;
- tempy = mouse.my;
- wcopyscreen (tempx, tempy, tempx+19, tempy+19, screen1, tempx, tempy, NULL);
- /* this means copy a square 20*20 from screen1 to the same spot
- on the default screen. Move the mouse around and watch the black
- wipe away as screen1 copies over. */
-
- /* NULL means the default screen. */
- } while (!kbhit ());
- mdeinit (); /* Deinitialize the mouse handler */
-
- getch (); /* wasn't that fun! */
-
- wfreeblock (screen1);
- wsetmode (oldmode);
- }
-